Telegram Group & Telegram Channel
🛠 Массовая конвертация изображений с использованием Go и параллелизма


🔍 Проблема

• При запуске маркетплейса векторных изображений [Vectopus.com](https://vectopus.com) разработчики забыли реализовать поддержку формата WebP
• Это ухудшало SEO и замедляло загрузку страниц
• Нужно было конвертировать 500 000+ SVG-файлов в WebP _ретроспективно_

⚙️ Решение: CLI-инструмент на Go

Создан инструмент на Go, обрабатывающий SVG-файлы в несколько этапов:

1. Загрузка SVG из Amazon S3
2. Конвертация в PNG
3. Добавление водяного знака (опционально)
4. Конвертация PNG в WebP
5. Загрузка WebP обратно в S3
6. Обновление метаданных в PostgreSQL
7. Удаление временных файлов

Задача, рассчитанная на несколько дней, была выполнена за несколько часов.

🗃 Архитектура хранилища

• Все изображения — в Amazon S3 (SVG — приватный бакет, PNG — публичный)
• Метаданные — в PostgreSQL с полиморфными связями
• Новые загрузки обрабатываются через SQS + Lambda + EventBridge

Выводы

• Использование Go дало высокую производительность при низких издержках
• Масштабируемость и надёжность решения
• Параллелизм Go отлично подходит для batch-обработки медиа

📖 Подробнее



tg-me.com/golang_books/973
Create:
Last Update:

🛠 Массовая конвертация изображений с использованием Go и параллелизма


🔍 Проблема

• При запуске маркетплейса векторных изображений [Vectopus.com](https://vectopus.com) разработчики забыли реализовать поддержку формата WebP
• Это ухудшало SEO и замедляло загрузку страниц
• Нужно было конвертировать 500 000+ SVG-файлов в WebP _ретроспективно_

⚙️ Решение: CLI-инструмент на Go

Создан инструмент на Go, обрабатывающий SVG-файлы в несколько этапов:

1. Загрузка SVG из Amazon S3
2. Конвертация в PNG
3. Добавление водяного знака (опционально)
4. Конвертация PNG в WebP
5. Загрузка WebP обратно в S3
6. Обновление метаданных в PostgreSQL
7. Удаление временных файлов

Задача, рассчитанная на несколько дней, была выполнена за несколько часов.

🗃 Архитектура хранилища

• Все изображения — в Amazon S3 (SVG — приватный бакет, PNG — публичный)
• Метаданные — в PostgreSQL с полиморфными связями
• Новые загрузки обрабатываются через SQS + Lambda + EventBridge

Выводы

• Использование Go дало высокую производительность при низких издержках
• Масштабируемость и надёжность решения
• Параллелизм Go отлично подходит для batch-обработки медиа

📖 Подробнее

BY Golang Books




Share with your friend now:
tg-me.com/golang_books/973

View MORE
Open in Telegram


Golang Books Telegram | DID YOU KNOW?

Date: |

Among the actives, Ascendas REIT sank 0.64 percent, while CapitaLand Integrated Commercial Trust plummeted 1.42 percent, City Developments plunged 1.12 percent, Dairy Farm International tumbled 0.86 percent, DBS Group skidded 0.68 percent, Genting Singapore retreated 0.67 percent, Hongkong Land climbed 1.30 percent, Mapletree Commercial Trust lost 0.47 percent, Mapletree Logistics Trust tanked 0.95 percent, Oversea-Chinese Banking Corporation dropped 0.61 percent, SATS rose 0.24 percent, SembCorp Industries shed 0.54 percent, Singapore Airlines surrendered 0.79 percent, Singapore Exchange slid 0.30 percent, Singapore Press Holdings declined 1.03 percent, Singapore Technologies Engineering dipped 0.26 percent, SingTel advanced 0.81 percent, United Overseas Bank fell 0.39 percent, Wilmar International eased 0.24 percent, Yangzijiang Shipbuilding jumped 1.42 percent and Keppel Corp, Thai Beverage, CapitaLand and Comfort DelGro were unchanged.

Start with a fresh view of investing strategy. The combination of risks and fads this quarter looks to be topping. That means the future is ready to move in.Likely, there will not be a wholesale shift. Company actions will aim to benefit from economic growth, inflationary pressures and a return of market-determined interest rates. In turn, all of that should drive the stock market and investment returns higher.

Golang Books from ru


Telegram Golang Books
FROM USA